Skip to content

Conversation

@hdonnay
Copy link
Member

@hdonnay hdonnay commented Sep 26, 2025

This series (split from #2266) adds JSON Schema documents for all the types exposed in the HTTP API and adds a way to generate the OpenAPI specification from those, a jq script, and some other loose files.

TODO

  • Write+check all the "description" members for the JSON Schema documents.
  • Write+check all the "description" members for the OpenAPI document.
  • Check the generated API reference (./Documentation/reference/api.md) is at least as-useful as it was.
  • Update documentation for contributors.

Coming later in series:

  • Cross-check and adjust the API implementation.
  • Implement the JSON marshaling and unmarshaling and check against the relevant JSON Schema.

@hdonnay hdonnay requested review from BradLugo and crozzy September 26, 2025 19:10
@hdonnay
Copy link
Member Author

hdonnay commented Sep 26, 2025

@crozzy @BradLugo RFC: I currently have the go generate work driven by a shell script written in zsh. Is that super annoying? I suppose I could port it to a go script.

@hdonnay hdonnay force-pushed the hack/apitypes/openapi branch from e22f298 to 38723ef Compare September 26, 2025 19:27
@hdonnay hdonnay force-pushed the hack/apitypes/openapi branch 3 times, most recently from 1c01176 to 8710b4d Compare October 22, 2025 22:32
@hdonnay
Copy link
Member Author

hdonnay commented Oct 22, 2025

Crozzy and I went through the endpoints this afternoon and made sure they were all in the OpenAPI document. I'll take another pass on the description fields now that everything is at least in-place.

@hdonnay hdonnay force-pushed the hack/apitypes/openapi branch 2 times, most recently from 051419c to c69e119 Compare October 27, 2025 21:28
@hdonnay hdonnay marked this pull request as ready for review October 27, 2025 21:49
@hdonnay hdonnay requested a review from a team as a code owner October 27, 2025 21:49
@hdonnay hdonnay force-pushed the hack/apitypes/openapi branch from c69e119 to d52b9c6 Compare October 27, 2025 21:53
@hdonnay
Copy link
Member Author

hdonnay commented Oct 27, 2025

Okay, I think this is ready to go.

This adds a bunch of documentation and tooling, but only makes a few code changes. Those will come in a later PR.

@hdonnay hdonnay force-pushed the hack/apitypes/openapi branch 3 times, most recently from af40d0d to 6110f81 Compare October 31, 2025 18:07
Copy link
Collaborator

@crozzy crozzy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We've been through this and it LGTM, one ask I have is some doc to tell the developer how to update the openapi spec and perhaps how the different generation scripts interact.

@hdonnay
Copy link
Member Author

hdonnay commented Nov 11, 2025

Will do.

@hdonnay hdonnay force-pushed the hack/apitypes/openapi branch from 6110f81 to 1644e2c Compare November 12, 2025 18:17
@hdonnay hdonnay requested a review from crozzy November 12, 2025 19:19
Creating this file is now handled by the same script that generates the
OpenAPI doc, so being able to build it independently and needing to
check it for drift don't make a ton of sense.

Signed-off-by: Hank Donnay <[email protected]>
@hdonnay hdonnay force-pushed the hack/apitypes/openapi branch from 1644e2c to 5891f64 Compare November 12, 2025 21:04
Copy link
Collaborator

@crozzy crozzy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the guide, it worked with me after I updated the npm version

@hdonnay
Copy link
Member Author

hdonnay commented Nov 12, 2025

/fast-forward

@github-actions

This comment was marked as resolved.

@hdonnay hdonnay merged commit 5891f64 into quay:main Nov 12, 2025
10 checks passed
@hdonnay hdonnay deleted the hack/apitypes/openapi branch November 12, 2025 22:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants